namespace opt.Analysis.Graph
{
	public class GraphArc<T,U>
	{
		private GraphNode<T,U> _next;
		private T _data;

		public GraphNode<T,U> Next
		{
			get
			{
				return _next;
			}
			set
			{
				_next = value;
			}
		}

		public T Data
		{
			get
			{
				return _data;
			}
			set
			{
				_data = value;
			}
		}

		public GraphArc(GraphNode<T,U> next)
		{
			_next = next;
		}
		
		public GraphArc(GraphNode<T,U> next,T data)
		{
			_next = next;
			_data = data;
		}
	}
}
